#ifndef PLUGINMANAGETREEWIDGETITEM_H
#define PLUGINMANAGETREEWIDGETITEM_H

#include <QListWidgetItem>
#include "../plugininterfaces.h"

/*!

BlackRabbit - OpenSource IDE.
@author Edward Sarkisyan (edward.sarkisyan@gmail.com)
Use LGPL (http://www.gnu.org/copyleft/lesser.html)

*/

class PluginManageTreeWidgetItem : public QListWidgetItem
{
    /*!
      @author Edward Sarkisyan
      @class PluginManageTreeWidgetItem
      @brief Provides tree widget item for plugin manager dialog
      */
public:
    /*!
      PluginManageTreeWidgetItem(QString text)
      @arg text label
      */
    PluginManageTreeWidgetItem(QString text);
    /*!
      ~PluginManageTreeWidgetItem()
      @brief Destructor
      */
    ~PluginManageTreeWidgetItem();
    /*!
      void setPlugin(Plugin* plugin);
      @brief setting plugin if it's not set yet
      @arg plugin pointer to plugin which'll be associated to this item
      */
    void setPlugin(Plugin* plugin);
    /*!
      Plugin* getPlugin();
      @return returns pointer to setted plugin
      */
    Plugin* getPlugin();
private:
    Plugin* m_pluginPtr;
};

#endif // PLUGINMANAGETREEWIDGETITEM_H
